﻿<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GOportunidades.aspx.cs"
    Inherits="crm.aplicacao.CRMSystem.GOportunidades" MasterPageFile="~/CRM.Master" %>

<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <ext:Store ID="strEmpresas" runat="server">
        <Reader>
            <ext:JsonReader IDProperty="idempresas">
                <Fields>
                    <ext:RecordField Name="idempresas" />
                    <ext:RecordField Name="empresa" />
                </Fields>
            </ext:JsonReader>
        </Reader>
    </ext:Store>
    <ext:Store ID="strContatos" runat="server">
        <Reader>
            <ext:JsonReader IDProperty="idcontatos">
                <Fields>
                    <ext:RecordField Name="idcontatos" />
                    <ext:RecordField Name="contato" />
                </Fields>
            </ext:JsonReader>
        </Reader>
    </ext:Store>


    <ext:Store ID="strProdutos" runat="server">
        <Reader>
            <ext:JsonReader IDProperty="idprodutos">
                <Fields>
                    <ext:RecordField Name="idprodutos" />
                    <ext:RecordField Name="nome" />
                </Fields>
            </ext:JsonReader>
        </Reader>
    </ext:Store>
    <ext:Store ID="strFases" runat="server">
        <Reader>
            <ext:JsonReader IDProperty="idfases">
                <Fields>
                    <ext:RecordField Name="idfases" />
                    <ext:RecordField Name="nome" />
                </Fields>
            </ext:JsonReader>
        </Reader>
    </ext:Store>
    <ext:Store ID="strUsuario" runat="server">
        <Reader>
            <ext:JsonReader IDProperty="idusuarios">
                <Fields>
                    <ext:RecordField Name="idusuarios" />
                    <ext:RecordField Name="nome" />
                </Fields>
            </ext:JsonReader>
        </Reader>
    </ext:Store>
    <ext:Store ID="strCampanhas" runat="server">
        <Reader>
            <ext:JsonReader IDProperty="idcampanhas">
                <Fields>
                    <ext:RecordField Name="idcampanhas" />
                    <ext:RecordField Name="nome" />
                </Fields>
            </ext:JsonReader>
        </Reader>
    </ext:Store>

    <%--daqui--%>
    <ext:BorderLayout ID="BorderLayout2" runat="server">
    <North Collapsible="true">
            <ext:FormPanel ID="FormPanel2" runat="server" Border="false" Title="Busca Avançada" Padding="7" Height="110" Collapsed="true" BodyStyle="background-color: #f0f0f0;" Layout="Anchor">
                <Defaults>
                    <ext:Parameter Name="LabelWidth" Value="7" />
                </Defaults>
                <Items>
                    <ext:HBoxLayout ID="HBoxLayout1" runat="server" Align="Middle" Pack="Start">
                        <BoxItems>
                            <%--<ext:BoxItem Margins="0 20 0 0">
                                <ext:FieldSet ID="FieldSet2" runat="server" Title="Situação">
                                    <Items>
                                        <ext:RadioGroup ID="RadioGroup2" runat="server" Width="140">
                                            <Items>
                                                <ext:Radio ID="chkAtivo" runat="server" BoxLabel="Ativos" Checked="true" />
                                                <ext:Radio ID="chkInativo" runat="server" BoxLabel="Inativos" />
                                            </Items>
                                        </ext:RadioGroup>
                                    </Items>
                                </ext:FieldSet>
                            </ext:BoxItem>--%>
                            <ext:BoxItem Margins="0 20 0 0">
                                <ext:FieldSet ID="FieldSet3" runat="server" Title="Tipo">
                                    <Items>
                                        <ext:CheckboxGroup ID="CheckboxGroup1" runat="server" Width="300">
                                            <Items>
                                                <ext:Checkbox ID="chkAtiva" runat="server" BoxLabel="Ativa" Checked="true" />
                                                <ext:Checkbox ID="chkGanha" runat="server" BoxLabel="Ganha" />
                                                <ext:Checkbox ID="chkPerdida" runat="server" BoxLabel="Perdida" />
                                            </Items>
                                        </ext:CheckboxGroup>
                                    </Items>
                                </ext:FieldSet>
                            </ext:BoxItem>
                           <%-- <ext:BoxItem Margins="0 20 0 0">
                                <ext:FieldSet ID="FieldSet4" runat="server" Title="Empresa">
                                    <Items>
                                        <ext:TextField ID="txtBuscar" runat="server" Width="300" EmptyText="Informe o nome da empresa..." EnableKeyEvents="true">
                                            <Listeners>
                                                <KeyDown Handler="Ext.net.DirectMethods.buscaAvancada(); " />
                                            </Listeners>
                                            <ToolTips>
                                                <ext:ToolTip ID="ToolTip1" runat="server" Anchor="top" AnchorOffset="90" Html="Deixe em branco para buscar todos." />
                                            </ToolTips>
                                        </ext:TextField>
                                    </Items>
                                </ext:FieldSet>
                            </ext:BoxItem>--%>
                            <ext:BoxItem Margins="0 20 0 0">
                                <ext:Button ID="Button1" runat="server" Icon="Magnifier" Text="Buscar">
                                    <Listeners>
                                        <Click Handler="Ext.net.DirectMethods.buscaAvancada();" />
                                    </Listeners>
                                </ext:Button>
                            </ext:BoxItem>
                        </BoxItems>
                    </ext:HBoxLayout>
                </Items>
            </ext:FormPanel>
        </North>
        
        <%--até aqui--%>
        
        <Center>
    <ext:GridPanel ID="GridOportunidades" runat="server" Title="Gerência de Oportunidades"
        AutoScroll="true" AutoWidth="true" Height="900" AutoExpandColumn="empresa">
        <Store>
            <ext:Store ID="strOportunidades" runat="server">
                <Reader>
                    <ext:JsonReader IDProperty="idoportunidades">
                        <Fields>
                            <ext:RecordField Name="idoportunidades" />
                            <ext:RecordField Name="empresa" />
                            <ext:RecordField Name="produto" />
                            <ext:RecordField Name="contato" />
                            <ext:RecordField Name="fase" />
                            <ext:RecordField Name="situacao" />
                        </Fields>
                    </ext:JsonReader>
                </Reader>
            </ext:Store>
        </Store>
        <TopBar>
            <ext:Toolbar ID="ToolbarOportunidade" runat="server" AutoWidth="true">
                <Items>
                    <ext:Button ID="btNovoOportunidade" runat="server" Text="Novo" Icon="Add">
                        <Listeners>
                            <Click Handler="#{WindowNovoOportunidade}.show()" />
                        </Listeners>
                    </ext:Button>
                    <ext:Button ID="btEditarOportunidade" runat="server" Text="Editar" Icon="PageWhiteEdit">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.editar();" />
                        </Listeners>
                    </ext:Button>
                    <ext:Button ID="btFinalizarOportuniade" runat="server" Text="Finalizar" Icon="CartGo">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.abrirFinalizar();" />
                        </Listeners>
                    </ext:Button>
                    <ext:ToolbarSeparator />
                    <ext:Button ID="btNovaAtividade" runat="server" Text="Nova Atividade" Icon="LightningAdd">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.abrirAtividade();" />
                        </Listeners>
                    </ext:Button>
                    <ext:ToolbarSeparator />
                    <ext:Button ID="btHistorico" runat="server" Text="Histórico" Icon="Comments">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.historico();" />
                        </Listeners>
                    </ext:Button>
                </Items>
            </ext:Toolbar>
        </TopBar>
        <ColumnModel ID="ColumnModel1" runat="server">
            <Columns>
                <ext:Column ColumnID="colEmpresa" Header="Empresa" DataIndex="empresa" Width="160" />
                <ext:Column ColumnID="colProduto" Header="Produto" DataIndex="produto" Width="200" />
                <ext:Column ColumnID="colContatos" Header="Contato" DataIndex="contato" Width="200" />
                <ext:Column ColumnID="colFase" Header="Fase" DataIndex="fase" Width="200" />
                <ext:Column ColumnID="colSituacao" Header="Situação" DataIndex="situacao" Width="200" />
            </Columns>
        </ColumnModel>
        <SelectionModel>
            <ext:RowSelectionModel ID="RowSelectionModel1" runat="server" SingleSelect="true" />
        </SelectionModel>
        <BottomBar>
            <ext:PagingToolbar ID="PagingToolbar1" runat="server" PageSize="20" />
        </BottomBar>
        <LoadMask ShowMask="true" />
    </ext:GridPanel>
    </Center>
    </ext:BorderLayout>
    <ext:Window ID="WindowNovoOportunidade" runat="server" Icon="CartAdd" Title="Oportunidade"
        Hidden="true" Modal="true" Width="450" AutoHeight="true" Resizable="false">
        <Items>
            <ext:FormPanel ID="FormNovoOportunidades" runat="server" Padding="5" Layout="Anchor"
                BodyStyle="background-color: transparent;" Header="false">
                <Items>
                    <ext:ComboBox ID="cboEmpresaOportunidade" runat="server" FieldLabel="Empresa" AnchorHorizontal="93%"
                        AllowBlank="false" MsgTarget="Side" StoreID="strEmpresas" ValueField="idempresas"
                        DisplayField="empresa" >
                         <Listeners>
                               <Select Handler="Ext.net.DirectMethods.reload(); " />
                         </Listeners>
                     </ext:ComboBox>
                    <ext:ComboBox ID="cboContatoOportunidade" runat="server" FieldLabel="Contato" AnchorHorizontal="93%"
                        AllowBlank="false" MsgTarget="Side" StoreID="strContatos" ValueField="idcontatos"
                        DisplayField="contato" />
                    <ext:ComboBox ID="cboProdutoOportunidade" runat="server" FieldLabel="Produto" AnchorHorizontal="93%"
                        AllowBlank="false" MsgTarget="Side" StoreID="strProdutos" ValueField="idprodutos"
                        DisplayField="nome" />
                    <ext:TextArea ID="txtDescricaoOportunidade" runat="server" FieldLabel="Descrição"
                        AnchorHorizontal="93%" AllowBlank="false" MsgTarget="Side" />
                    <ext:FieldSet ID="FieldSet1" runat="server" Title="Detalhes" Collapsible="true" Layout="form">
                        <Items>
                            <ext:DateField ID="dtContato" runat="server" FieldLabel="Data Contato" AllowBlank="false"
                                MsgTarget="Side" AnchorHorizontal="50%" />
                            <ext:ComboBox ID="cboFase" runat="server" FieldLabel="Fase" AnchorHorizontal="95%"
                                AllowBlank="false" MsgTarget="Side" StoreID="strFases" ValueField="idfases" DisplayField="nome" />
                            <ext:ComboBox ID="cboCampanha" runat="server" FieldLabel="Campanha" AnchorHorizontal="95%"
                                AllowBlank="false" MsgTarget="Side" StoreID="strCampanhas" ValueField="idcampanhas"
                                DisplayField="nome" />
                            <ext:ComboBox ID="cboUsuario" runat="server" FieldLabel="Responsável" AnchorHorizontal="95%"
                                AllowBlank="false" MsgTarget="Side" StoreID="strUsuario" ValueField="idusuarios"
                                DisplayField="nome" />
                        </Items>
                    </ext:FieldSet>
                </Items>
                <Buttons>
                    <ext:Button ID="btGravarOportunidade" runat="server" Text="Gravar" Icon="Disk">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.valida();" />
                        </Listeners>
                    </ext:Button>
                    <ext:Button ID="btCancelarOportunidade" runat="server" Text="Cancelar" Icon="Cancel">
                        <Listeners>
                            <Click Handler="#{WindowNovoOportunidade}.hide();" />
                        </Listeners>
                    </ext:Button>
                </Buttons>
            </ext:FormPanel>
        </Items>
        <Listeners>
            <Close Handler="Ext.net.DirectMethods.limparCampoOportunidades();" />
            <Hide Handler="Ext.net.DirectMethods.limparCampoOportunidades();" />
        </Listeners>
    </ext:Window>
    <ext:Window ID="WindowsFinalizar" runat="server" Icon="CartAdd" Title="Oportunidade"
        Hidden="true" Modal="true" Width="450" AutoHeight="true" Resizable="false">
        <Items>
            <ext:FormPanel ID="FormFinalizar" runat="server" Padding="5" Layout="Anchor" BodyStyle="background-color: transparent;"
                Header="false">
                <Items>
                    <ext:DateField ID="dtFinalizado" runat="server" FieldLabel="Data Finalização" AllowBlank="false"
                        MsgTarget="Side" AnchorHorizontal="50%" />
                    <ext:RadioGroup ID="RadioGroup1" runat="server" ItemCls="x-check-group-base" FieldLabel="Oportunidade">
                        <Items>
                            <ext:Radio ID="rdGanho" runat="server" BoxLabel="Ganha" Checked="true" />
                            <ext:Radio ID="rdPerdida" runat="server" BoxLabel="Perdida" />
                        </Items>
                    </ext:RadioGroup>
                    <ext:TextArea ID="txtDescricao" runat="server" FieldLabel="Descrição" AnchorHorizontal="93%"
                        AllowBlank="false" MsgTarget="Side" />
                </Items>
                <Buttons>
                    <ext:Button ID="btGravarFinalizar" runat="server" Text="Gravar" Icon="Disk">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.finalizarOportunidade();" />
                        </Listeners>
                    </ext:Button>
                    <ext:Button ID="btCancelarFrmFinalizar" runat="server" Text="Cancelar" Icon="Cancel">
                        <Listeners>
                            <Click Handler="#{WindowsFinalizar}.hide();" />
                        </Listeners>
                    </ext:Button>
                </Buttons>
            </ext:FormPanel>
        </Items>
        <Listeners>
            <Close Handler="Ext.net.DirectMethods.limparFinalizar();" />
            <Hide Handler="Ext.net.DirectMethods.limparFinalizar();" />
        </Listeners>
    </ext:Window>
    <ext:Window ID="WindowsAtividades" runat="server" Icon="LightningAdd" Title="Nova Atividade"
        Hidden="true" Modal="true" Width="450" AutoHeight="true" Resizable="false">
        <Items>
            <ext:FormPanel ID="FormPanel1" runat="server" Padding="5" Layout="Anchor" BodyStyle="background-color: transparent;"
                Header="false">
                <Items>
                    <ext:ComboBox ID="cbEmpresa" runat="server" FieldLabel="Empresa" AllowBlank="false"
                        MsgTarget="Side" AnchorHorizontal="93%" Enabled="false" StoreID="strEmpresas"
                        ValueField="idempresas" DisplayField="empresa" />
                    <ext:TextArea ID="txtDescricaoAtividade" runat="server" FieldLabel="Descrição" AllowBlank="false"
                        AnchorHorizontal="93%" MsgTarget="Side" />
                    <ext:DateField ID="dtRetorno" runat="server" FieldLabel="Data Retorno" AllowBlank="false"
                        MsgTarget="Side" AnchorHorizontal="50%" />
                    <ext:ComboBox ID="cbResponsavelAtividade" runat="server" FieldLabel="Responsável"
                        AnchorHorizontal="93%" AllowBlank="false" MsgTarget="Side" StoreID="strUsuario"
                        ValueField="idusuarios" DisplayField="nome" />
                </Items>
                <Buttons>
                    <ext:Button ID="btGravarAtividades" runat="server" Text="Gravar" Icon="Disk">
                        <Listeners>
                            <Click Handler="Ext.net.DirectMethods.verificaAtividade();" />
                        </Listeners>
                    </ext:Button>
                    <ext:Button ID="Button2" runat="server" Text="Cancelar" Icon="Cancel">
                        <Listeners>
                            <Click Handler="#{WindowsAtividades}.hide();" />
                        </Listeners>
                    </ext:Button>
                </Buttons>
            </ext:FormPanel>
        </Items>
        <Listeners>
            <Close Handler="Ext.net.DirectMethods.limparCampoAtividade();" />
            <Hide Handler="Ext.net.DirectMethods.limparCampoAtividade();" />
        </Listeners>
    </ext:Window>
    <ext:Window ID="WindowsHistorico" runat="server" Icon="Comments" Title="Histórico de atividades"
        Hidden="true" Modal="true" Width="810" Height="450" Resizable="false">
        <Items>
            <ext:BorderLayout ID="BorderLayout1" runat="server">
                <North>
                    <ext:FormPanel ID="Panel1" runat="server" Margins="5 5 5 5" Title="Informações" Height="130"
                        Padding="5" Frame="true" Icon="Information">
                        <Items>
                            <ext:TextField ID="txtDesOportunidade" runat="server" FieldLabel="Descrição Oportunidade"
                                DataIndex="txtDesOportunidade" AnchorHorizontal="90%" />
                            <ext:TextField ID="txtProdHistorico" runat="server" FieldLabel="Produto" DataIndex="txtProdHistorico"
                                AnchorHorizontal="90%" />
                        </Items>
                    </ext:FormPanel>
                </North>
                <West>
                    <ext:GridPanel ID="GridHistorico" runat="server" Title="Histórico" Margins="0 0 5 5"
                        Icon="Comments" Frame="true" Width="350" AutoExpandColumn="dataretorno">
                        <Store>
                            <ext:Store ID="strHistorico" runat="server" OnRefreshData="Store1_Refresh">
                                <Reader>
                                    <ext:JsonReader IDProperty="idatividade">
                                        <Fields>
                                            <ext:RecordField Name="idatividade" ServerMapping="IdAtividade" />
                                            <ext:RecordField Name="responsavel" ServerMapping="Responsavel" />
                                            <ext:RecordField Name="dataretorno" ServerMapping="DataRetorno" />
                                            <ext:RecordField Name="datacontato" ServerMapping="DataContato" />
                                        </Fields>
                                    </ext:JsonReader>
                                </Reader>
                            </ext:Store>
                        </Store>
                        <ColumnModel ID="ColumnModel2" runat="server">
                            <Columns>
                                <%--preparar essa grid para as atividades--%>
                                
                                <ext:Column ColumnID="colDataRetorno" DataIndex="dataretorno" Header="Data de retorno"
                                    Width="120">
                                    <Renderer Handler="return Ext.util.Format.date(value, 'd/m/Y');" />
                                </ext:Column>
                                <ext:Column ColumnID="dtContato" DataIndex="datacontato" Header="Data Contato" Width="100">
                                    <Renderer Handler="return Ext.util.Format.date(value, 'd/m/Y');" />
                                </ext:Column>
                                <ext:Column ColumnID="colResponsavel" DataIndex="responsavel" Header="Responsável"
                                    Width="100" />
                            </Columns>
                        </ColumnModel>
                        <SelectionModel>
                            <ext:RowSelectionModel ID="Teste" runat="server" SingleSelect="true" SelectedRecordID="idatividade">
                                <DirectEvents>
                                    <RowSelect OnEvent="RowSelect" Buffer="100">
                                        <EventMask ShowMask="true" Target="CustomTarget" CustomTarget="#{FormHistorico}" />
                                        <ExtraParams>
                                         <%--    or can use params[2].id as value --%>
                                            <ext:Parameter  Name="idatividade" Value="this.getSelected().idatividade" Mode="Raw" />
                                        </ExtraParams>
                                    </RowSelect>
                                </DirectEvents>
                            </ext:RowSelectionModel>
                        </SelectionModel>
                        <BottomBar>
                            <ext:PagingToolbar ID="PagingToolbar2" runat="server" />
                        </BottomBar>
                        <LoadMask ShowMask="true" />
                    </ext:GridPanel>
                </West>
                <Center>
                    <ext:FormPanel ID="FormHistorico" runat="server" Padding="5" Frame="true" Title="Detalhes"
                        Icon="Comment" Height="400" Width="500">
                        <Items>
                            <ext:TextArea ID="txtDescricaoHistorico" runat="server" FieldLabel="Descrição" DataIndex="txtDescricaoHistorico"
                                AnchorHorizontal="93%" />
                            <ext:TextArea ID="txtObservacaoHistorico" runat="server" FieldLabel="Observação"
                                DataIndex="txtObservacaoHistorico" AnchorHorizontal="93%" />
                        </Items>
                    </ext:FormPanel>
                </Center>
            </ext:BorderLayout>
        </Items>
    </ext:Window>
    <ext:Hidden ID="hdfIdOportunidades" runat="server" />
</asp:Content>
